package org.darkforest.ucenter.service;

import java.util.List;

import org.darkforest.model.*;

/**
 * 订单service
 * <p>
 * 项目名称         :bwmall-ucenter
 * 文件名           :OrderService.java
 * 开发公司及作者    :陈超
 * 版本号及开发日期  :Rev. 1.00 (2015年2月1日)
 */
public interface UserOrderService {

    public OrderSearchBean getOrderListByUser(OrderSearchBean page);

    public List<OrderVo> getDeletedOrderListByUser(OrderSearchBean page);

    public OrderVo getOrderDetailById(Integer id, Integer buyerId);

    public List<OrderLog> getOrderLogByOrderId(Integer id);

    /**
     * 商品评论
     *
     * @param gevalOrderid      订单号
     * @param gevalOrdergoodsid 商品号
     * @param gevalScores       评分
     * @param gevalIsanonymous  是否匿名
     * @param gevalContent      评论内容
     * @param member            操作员
     */
    public void evaluationAdd(Integer[] gevalOrderid,
                              Integer[] gevalOrdergoodsid, Integer[] gevalScores,
                              Integer[] gevalIsanonymous, String[] gevalContent, Member member);


    public void evaluationList(EvaluateGoodsSearchBean page);


    public EvaluateGoods getEvaluateById(Integer id, Integer memberId);

    /**
     * 取消订单
     *
     * @param vo
     */
    public PdLog cancelOrder(OrderVo vo);

    public void takeOrder(Integer orderId, Integer memberId);


    public void updateEvaluateById(EvaluateGoodsVo vo);

    /**
     * 退款
     *
     * @param orderId      订单ID
     * @param buyerMessage 退款描述
     * @param gevalImage   凭证图片路径
     */
    public RefundReturn retrunOrder(Integer orderId, String buyerMessage, String[] gevalImage, Integer memberId);
}
